Index

api/v1/jobs/{jobno}/labour

Path: api/v1/jobs/{jobno}/labour

This API is JSON:API compliant.

This endpoint supports the following methods:
GET POST PATCH

The resource type for this endpoint is JobLabour
The identifier is jobno-lineid

The JobLabour resource type attributes are as follows:

{
"start":string (DateTime in ISO format)
"hours":integer
"minutes":integer
"labourType":string
"labourInit":string
"comment":string
"addInit":string (read-only)
optional
"addDate":string (DateTime in ISO format) (read-only)
"modifyInit":string (read-only)
optional
"modifyDate":string (DateTime in ISO format) (read-only)
}

Example GET (Return all)

Path: api/v1/jobs/10/labour

Response:

{
    "data": [
        {
            "id": "10-2",
            "type": "JobLabour",
            "attributes": {
                "start": "2025-03-25T18:20:00",
                "hours": 0,
                "minutes": 5,
                "labourType": "Workshop",
                "labourInit": "SYS",
                "comment": "",
                "addInit": "SYS",
                "addDate": "2025-03-25T18:10:00",
                "modifyInit": "SYS",
                "modifyDate": "2025-03-25T18:10:00"
            }
        },
        {
            "id": "10-1",
            "type": "JobLabour",
            "attributes": {
                "start": "2025-03-10T18:10:00",
                "hours": 0,
                "minutes": 10,
                "labourType": "Admin",
                "labourInit": "SYS",
                "comment": "Did some admin",
                "addInit": "SYS",
                "addDate": "2025-03-25T18:10:00",
                "modifyInit": "SYS",
                "modifyDate": "2025-03-25T18:10:00"
            }
        }
    ]
}

Example GET (Return specific)

Path: api/v1/jobs/10/labour/10-1

Response:

{
    "data": {
        "id": "10-1",
        "type": "JobLabour",
        "attributes": {
            "start": "2025-03-10T18:10:00",
            "hours": 0,
            "minutes": 10,
            "labourType": "Admin",
            "labourInit": "SYS",
            "comment": "Did some admin",
            "addInit": "SYS",
            "addDate": "2025-03-25T18:10:00",
            "modifyInit": "SYS",
            "modifyDate": "2025-03-25T18:10:00"
        },
      "links": {
        "self": "/api/v1/jobs/10/labour/10-1"
      }
    }
}

Example POST

Path: api/v1/jobs/10/labour

Request:

{
    "data": {
        "type": "JobLabour",
        "attributes": {
            "start": "2025-03-10T18:10:00",
            "hours": 0,
            "minutes": 10,
            "labourType": "Admin",
            "labourInit": "SYS",
            "comment": "New labour"
        }
    }
}

Response:

{
    "data": {
        "id": "10-3",
        "type": "JobLabour",
        "attributes": {
            "start": "2025-03-10T18:10:00",
            "hours": 0,
            "minutes": 10,
            "labourType": "Admin",
            "labourInit": "SYS",
            "comment": "New labour",
            "addInit": "API",
            "addDate": "2025-03-25T18:19:56.896909+11:00",
            "modifyInit": "API",
            "modifyDate": "2025-03-25T18:19:56.896909+11:00"
        },
      "links": {
        "self": "/api/v1/jobs/10/labour/10-3"
      }
    }
}

Example PATCH

Path: api/v1/jobs/10/labour/10-1

Request:

{
    "data": {
        "id": "10-1",
        "type": "JobLabour",
        "attributes": {
            "start": "2025-03-10T18:10:00",
            "hours": 0,
            "minutes": 10,
            "labourType": "Admin",
            "labourInit": "SYS",
            "comment": "Did some admin"
        }
    }
}

Response:

{
    "data": {
        "id": "10-1",
        "type": "JobLabour",
        "attributes": {
            "start": "2025-03-10T18:10:00",
            "hours": 0,
            "minutes": 10,
            "labourType": "Admin",
            "labourInit": "SYS",
            "comment": "Did some admin 22",
            "addInit": "SYS",
            "addDate": "2025-03-25T18:10:00",
            "modifyInit": "SYS",
            "modifyDate": "2025-03-25T18:10:00"
        },
      "links": {
        "self": "/api/v1/jobs/10/labour/10-1"
      }
    }
}